perm filename NCOPY.VLI[VLI,LSP] blob
sn#382037 filedate 1978-09-08 generic text, type T, neo UTF8
(de ncopy ( l ;; d res)
( if ( atom l) l
(copy2 l ( setq res ( cons)))
res)))))))
(de copy2 ( l r ;; aux)
( setq d ( mcons l r d))
( cond
((atom ( car l)) ( rplaca r ( car l))
(cond
((atom (cdr l)) (rplacd r (cdr l)))
((setq aux (memq (cdr l) d)) (rplacd r (cadr aux)))
(t (copy2 (cdr l) (cdr (rplacd r ( cons)))))))
((atom (cdr l)) (rplacd r (cdr l))
(cond
((atom (car l)) (rplaca r (car l)))
((setq aux (memq (car l) d)) (rplaca r (cadr aux)))
(t (copy2 (car l) ( car (rplaca r (cons)))))))
((setq aux (memq (car l) d)) (rplaca r (cadr aux))
(cond
((atom (cdr l)) (rplacd r (cdr l)))
((setq aux (memq (cdr l) d)) (rplacd r (cadr aux)))
(t (copy2 (cdr l) (cdr (rplacd r (cons)))))))
((setq aux (memq (cdr l) d)) (rplacd r (cadr aux))
(cond
((atom (car l)) (rplaca r (car l)))
((setq aux (memq (car l) d)) (rplaca r (cadr aux)))
(t (copy2 (car l) (car (rplaca l ( cons)))))))
(t (copy2 (car l) (car ( rplaca r ( cons))))
(copy2 (cdr l) (cdr (rplacd r (cons)))))))
)))))))))))